Methods and systems for acquiring and processing veterinary-related information to facilitate differential diagnosis

ABSTRACT

Computer-implemented methods and systems for acquiring and processing veterinary-related information, such as non-human animal diseases, associated medical signs, differentials, and treatment-related information, are provided. The disclosed methods and systems facilitate performing computer-based differential diagnosis by veterinary medicine practitioners. An example method may comprise: importing veterinary-related text information, wherein the veterinary-related text information is related to one or more non-human animal diseases; parsing the veterinary-related text information into one or more terms; determining relations between the one or more terms; classifying the one or more terms such that each term relates to one of: a non-human animal species, an animal disease, a medical sign and a treatment; and generating a database table associated with the imported veterinary-related text information, the database table comprising the one or more classified terms and the relations therebetween.

TECHNICAL FIELD

This disclosure relates generally to data processing, and moreparticularly to computer-implemented methods and systems for acquiringand processing veterinary-related information. The disclosed methods andsystems facilitate performing computer-based differential diagnosis forveterinary medicine practitioners.

DESCRIPTION OF RELATED ART

The approaches described in this section could be pursued but are notnecessarily approaches that have been previously conceived or pursued.Therefore, unless otherwise indicated, it should not be assumed that anyof the approaches described in this section qualify as prior art merelyby virtue of their inclusion in this section.

Although computer-based medical decision support for diagnosing humanillnesses has evolved significantly, diagnosis and treatment of animalsby veterinary medicine practitioners can still extensively depend on theknowledge and skill of the practitioners. When a practitioner does notimprove their knowledge on a continual basis, animals under thatpractitioner's care may not receive the best diagnostics or treatments.Unfortunately, the more time a practitioner spends in researching thestate of veterinary medicine to treat a particular animal, the less timethe practitioner has to spend with animals and their handlers.

When diagnosing animals, practitioners can use practice managementsoftware or save information in case files, but they can generally onlyget cooperation from other practitioners in the same hospital if recordsare shared. To share records otherwise, numerous phone calls and faxesare generally required, which can also take the practitioner's time awayfrom the patient and client. In some cases, the practitioners may makeposts on online forums or other resources to share their experience.However, search over such online resources by other practitioners mayrequire a significant amount of time to find required information.

Moreover, determining a medical diagnosis for non-human animals is oftena difficult task. An animal cannot talk to describe their symptoms andpractitioners are limited to objective medical signs detected duringexaminations. It is often difficult for veterinary practitioners todetermine a certain disease based on the combination of obtained animalclinical signs or characteristics.

SUMMARY

This summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This summary is not intended to identify key features oressential features of the claimed subject matter, nor is it intended tobe used as an aid in determining the scope of the claimed subjectmatter.

In accordance with various embodiments and the corresponding disclosurethereof, a computer-implemented method for acquiring and processinginformation about non-human animal diseases is provided. The method maycomprise: importing veterinary-related text information, wherein theveterinary-related text information is related to one or more non-humananimal diseases; parsing the veterinary-related text information intoone or more terms; determining relations between the one or more terms;classifying the one or more terms such that each term relates to one of:a non-human animal species, an animal disease, a medical sign and atreatment; and generating a database table associated with the importedveterinary-related text information, the database table comprising theone or more of classified terms and the relations therebetween.

In one example embodiment, the method may further comprise selecting atleast one predetermined ontology associated with the one or more terms,wherein the ontology has a structural framework of terms and relationstherebetween. The determining relations between the one or more termscan be based on the structural framework of the at least one ontology.The classifying of the one or more terms can be based on the structuralframework of the at least one ontology. The parsing of theveterinary-related text information may comprise applying predeterminedsemantic rules.

In yet another example embodiment, the method may further compriseassigning weight factors to the terms associated with theveterinary-related text information; and storing the weight factors inthe database table. The generating the database table associated withthe imported veterinary-related text information may comprise updatingan existing database table. The method may further comprise crawling oneor more resources over a network to import the veterinary-related textinformation. The method may further comprise generating, upon a userrequest, a web page related to a non-human animal disease, the web pagecomprising one or more of medical signs and treatments acquired frommultiple resources. The method may further comprise receiving a userrequest to conduct a veterinary differential diagnosis, wherein the userrequest comprises one or more of preselected medical signs; searchingfor information about non-human animal diseases, associated with thepreselected medical signs, through the one or more database tables; andreporting the list of one or more non-human animal diseases.

The method may further comprise ranking the list of one or morenon-human animal diseases based on the weight factors applied to theterms; and sorting the one or more non-human animal diseases on theirrelevancy. The method may further comprise providing a user interface toaccess, search over, and process information about non-human animaldiseases among the at least one database table. The method may furthercomprise virtually linking the generated database table associated withthe imported veterinary-related text information with one or more remoteresources in the network.

According to yet more various embodiments, a system for acquiring andprocessing information about non-human animal diseases is provided. Thesystem may comprise: a communication module configured to importveterinary-related text information, wherein the veterinary-related textinformation comprises information related to one or more non-humananimal diseases; a parsing module configured to parse theveterinary-related text information into one or more terms; arelationship determination module configured to determine relationsbetween the one or more terms; a classifying module configured toclassify the one or more terms such that each term relates to one of: anon-human animal species, an animal disease, a medical sign and atreatment; and a database table generator configured to generate adatabase table associated with the imported veterinary-related textinformation, the database table comprising the one or more of classifiedterms and the relations therebetween.

In one example embodiment, the system may further comprise an ontologyselecting module configured to select at least one predeterminedontology associated with the one or more terms, wherein the ontology hasa structural framework of terms and relations therebetween. The systemmay further comprise a ranking module configured to assign weightfactors to the terms associated with the veterinary-related textinformation, and rank the list of one or more non-human animal diseasesbased on the weight factors applied to the terms. The system may furthercomprise a crawling module configured to crawl one or more resourcesover a network to import the veterinary-related text information. Thesystem may further comprise a web page generator configured to generate,upon a user request, a web page related to a non-human animal disease,the web page comprising one or more of medical signs and treatmentsacquired from multiple resources. The system may further comprise a userinterface configured to enable users to access, search over, and processinformation about non-human animal diseases among the at least onedatabase table.

According to yet more various embodiments, a computer-readable mediumhaving instructions stored thereon, which, when executed by one or morecomputers, cause the one or more computers to: import veterinary-relatedtext information, wherein the veterinary-related text information isrelated to one or more non-human animal diseases; parse theveterinary-related text information into one or more terms; determinerelations between the one or more terms; classify the one or more termssuch that each term relates to one of: a non-human animal species, ananimal disease, a medical sign and a treatment; and generate a databasetable associated with the imported veterinary-related text information,the database table comprising the one or more of classified terms andthe relations therebetween.

To the accomplishment of the foregoing and related ends, the one or moreaspects comprise the features hereinafter fully described andparticularly pointed out in the claims. The following description andthe drawings set forth in detail certain illustrative features of theone or more aspects. These features are indicative, however, of but afew of the various ways in which the principles of various aspects maybe employed, and this description is intended to include all suchaspects and their equivalents.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments are illustrated by way of example and not limitation in thefigures of the accompanying drawings, in which like references indicatesimilar elements and in which:

FIG. 1 shows a block diagram illustrating a system environment suitablefor acquiring and processing veterinary-related information tofacilitate differential diagnosis according to an example embodiment.

FIG. 2 is a diagram of a system for acquiring and processingveterinary-related information according to an example embodiment.

FIG. 3 is a process flow diagram showing a method for acquiring andprocessing veterinary-related information according to an exampleembodiment.

FIG. 4 is an illustration of parsing and relationship generatingprocesses according to an example embodiment.

FIG. 5 is a simplified illustration of a graphical user interface of aweb page for conducting a computer-based differential diagnosis relatedto non-human animals according to an example embodiment.

FIG. 6 is a simplified illustration of a graphical user interface of aweb page for showing search results based on pre-selected one or moremedical signs according to an example embodiment.

FIG. 7 is a simplified illustration of a graphical user interface of aweb page related to an animal disease according to an exampleembodiment.

FIG. 8 is a diagrammatic representation of an example machine in theform of a computer system within which a set of instructions, for themachine to perform any one or more of the methodologies discussedherein, is executed.

DETAILED DESCRIPTION

The following detailed description includes references to theaccompanying drawings, which form a part of the detailed description.The drawings show illustrations in accordance with example embodiments.These example embodiments, which are also referred to herein as“examples” are described in enough detail to enable those skilled in theart to practice the present subject matter. The embodiments can becombined, other embodiments can be utilized, or structural, logical andelectrical changes can be made without departing from the scope of whatis claimed. The following detailed description is, therefore, not to betaken in a limiting sense, and the scope is defined by the appendedclaims and their equivalents.

In this document, the terms “a” or “an” are used, as is common in patentdocuments, to include one or more than one. In this document, the term“or” is used to refer to a nonexclusive “or”, such that “A or B”includes “A but not B”, “B but not A”, and “A and B”, unless otherwiseindicated. Furthermore, all publications, patents, and patent documentsreferred to in this document are incorporated by reference herein intheir entirety, as though individually incorporated by reference. In theevent of inconsistent usages between this document and those documentsso incorporated by reference, the usage in the incorporated reference(s)should be considered supplementary to that of this document; forirreconcilable inconsistencies, the usage in this document controls.

The embodiments described herein relate to computer-implemented methodsand systems for acquiring and processing veterinary-related informationto facilitate differential diagnosis of non-human animals. Theveterinary-related information may refer to non-human animal diseases,associated medical signs, differentials, and treatment-relatedinformation.

Differential diagnosis is a method to identify a certain disease on thebasis of available symptoms, medical signs, detected characteristics,previous illness history, etc. This method often involves first making alist of possible diagnoses, then attempting to remove diagnoses from thelist until one diagnosis remains. In some cases, there will remain nodiagnosis, which may suggest a veterinary practitioner has made anerror, or that the true diagnosis is unknown to medicine. Removingdiagnoses from the list is done by making observations and using teststhat should have different results, depending on which diagnosis iscorrect.

According to various embodiments disclosed herein, veterinarypractitioners may utilize a differential diagnosis support system tosupport making diagnostic decisions. Such system may be implemented assoftware embedded in a computing environment. In general, thedifferential diagnosis support system allows the veterinarypractitioners to generate search requests comprising data obtained uponanimal examination, and responsive to these search requests, thepractitioners are provided with a list of animal diseases that aresomehow associated with the examination data. The veterinarypractitioners may then review descriptions of found diseases includingmedical signs data, treatment information, description of past cases,specialist discussions, and other content, thereby providing quickdecision support. The system may also provide the practitioners with auseful tool to share their experience among other system users, tocreate or update existing disease descriptions, treatments methods,outcomes, etc.

According to various embodiments, the differential diagnosis supportsystem may have a database to store veterinary-related information. Theveterinary-related information may comprise, among other things,descriptions of animal diseases, associated with them medical signs,relationships therebetween, treatment information, and descriptions ofreal cases. The database may be updated with new database tables, eachbeing related to a certain animal disease. The database tables may begenerated and updated by users or automatically by the differentialdiagnosis support system.

According to various embodiments, the differential diagnosis supportsystem can be configured to populate the database with new informationfrom multiple remote online resources. More specifically, thedifferential diagnosis support system may comprise a system foracquiring and processing the veterinary-related information. Such systemmay crawl the Internet or any other network to retrieve informationrelated to certain diseases. For example, the system may import articlesor online publications (e.g., PubMed articles) related to certain animaldiseases, following keywords used therein. The importing can beperformed on an ongoing basis. The imported text information is thenparsed into sentences using, for example, an open source semanticprocessing library. At the next step, the terms are extracted from thesentences.

The system may comprise multiple computer ontologies defining terms andrelationships therebetween related to a certain field or disease. Theextracted terms can be matched to these ontologies such that the termsare separated into known and unknown terms. The unknown terms can bedetermined by mapping to one or more computer ontologies. The system mayalso determine relationships between the extracted terms.

Based on the analysis of terms and their relations, the systemclassifies the terms such that each term relates to one of: a non-humananimal species, an animal disease, a medical sign, a differential, and atreatment. The terms may also be assigned with weight factors, which mayrepresent their relevancy for a specific subject or disease. Therelevancy can be determined based on “citation index”.

The system may then generate a database table associated with theimported veterinary-related text information. The database table maycomprise the classified terms, the relations therebetween, and a virtuallink to the online resource or publication comprising the importedveterinary-related text information.

According to various examples, the system may then uniquely generate webpages related to the database tables. The system may also comprise auser interface to interact with the system. The user interface can beused to search for information over the system database tables. Usersmay search for description of animal diseases directly by generating auser request comprising a disease name or they may input one or moremedical signs obtained during examination to get a list of possiblediseases possessing the same medical signs. Accordingly, the generatedweb pages related to animal diseases may comprise information related todescription of diseases, medical signs, treatment-related information,description of cases, practitioner advices or discussions, links toexternal resources, and so forth. Lists of possible animal diseasesgenerated responsive to the user request may optionally be sorted orranked based on the weight factors assigned to them. Since the system isaccessible over a network, such as the Internet, their advantages can beused by many practitioners without requiring them to be in the samepractice management software system.

The disclosed approaches for acquiring and processing theveterinary-related information are significantly faster and morerelevant than prior art methods of diagnosing veterinary patients. Incontrast to prior art systems for sharing the veterinary-relatedinformation, such as online forums, the disclosed technology enablesveterinarian practitioners to search for multiple clinical signs at onceand then to view resulting differentials diagnoses based on relationshipbuilding software. The disclosed approaches also enable a practitionerto start a new case online and then send that case to specialists forevaluation. Accordingly, the disclosed methods and systems are a veryuseful and unique tool to facilitate computer-based differentialdiagnosis of non-human animals.

The following description provides the detailed description of variousembodiments related to methods and systems for acquiring and processingthe veterinary-related information.

Referring now to the drawings, FIG. 1 shows a block diagram illustratinga system environment 100 suitable for acquiring and processing theveterinary-related information to facilitate differential diagnosisaccording to an example embodiment.

The system environment 100 comprises one or more client devices 102, adifferential diagnosis support system 104, one or more informationsources 106, and a network 108. The network 108 may couple theaforementioned modules.

The network 108 is a network of data processing nodes interconnected forthe purpose of data communication, which may be utilized tocommunicatively couple various components of the environment 100. Thenetwork 108 may include the Internet or any other network capable ofcommunicating data between devices. Suitable networks may include orinterface with any one or more of, for instance, a local intranet, a PAN(Personal Area Network), a LAN (Local Area Network), a WAN (Wide AreaNetwork), a MAN (Metropolitan Area Network), a virtual private network(VPN), a storage area network (SAN), a frame relay connection, anAdvanced Intelligent Network (AIN) connection, a synchronous opticalnetwork (SONET) connection, a digital T1, T3, E1 or E3 line, DigitalData Service (DDS) connection, DSL (Digital Subscriber Line) connection,an Ethernet connection, an ISDN (Integrated Services Digital Network)line, a dial-up port, such as a V.90, V.34 or V.34bis analog modemconnection, a cable modem, an ATM (Asynchronous Transfer Mode)connection, or an FDDI (Fiber Distributed Data Interface) or CDDI(Copper Distributed Data Interface) connection. Furthermore,communications may also include links to any of a variety of wirelessnetworks, including WAP (Wireless Application Protocol), GPRS (GeneralPacket Radio Service), GSM (Global System for Mobile Communication),CDMA (Code Division Multiple Access) or TDMA (Time Division MultipleAccess), cellular phone networks, GPS (Global Positioning System), CDPD(cellular digital packet data), RIM (Research in Motion, Limited) duplexpaging network, Bluetooth radio, or an IEEE 802.11-based radio frequencynetwork. The network 108 can further include or interface with any oneor more of an RS-232 serial connection, an IEEE-1394 (Firewire)connection, a Fiber Channel connection, an IrDA (infrared) port, a SCSI(Small Computer Systems Interface) connection, a USB (Universal SerialBus) connection or other wired or wireless, digital or analog interfaceor connection, mesh or Digi® networking.

As used herein, the term “client device” refers to a computer, a laptop,a tablet computer, a portable computing device, a personal digitalassistant (PDA), a handheld cellular phone, a mobile phone, a smartphone, a handheld device having wireless connection capability, or anyother electronic device suitable for communicating data via the network108.

The client devices 102 may be configured to browse web sites or accessremote servers via the network 108. For example, the client devices 102can be used to communicate with the differential diagnosis supportsystem 104. In some embodiments, the client devices 102 may comprise abrowser 110 providing the ability to browse and interact with sites onthe Internet. In yet more embodiments, the client devices 102 may embedad hoc software, e.g. a mobile application 112 providing the ability tocommunicate with the differential diagnosis support system 104.

The differential diagnosis support system 104 can be implemented as aremote server having multiple modules and databases accessible over thenetwork 108. In particular, the differential diagnosis support system104 may comprise, among other things, a system 114 for acquiring andprocessing veterinary-related information, a user interface 116, and oneor more databases 118 to store the veterinary-related information andany other relevant information or software codes. The remote server mayoptionally host a website to enable users access the one or moredatabase 118 via the user interface 116.

The system 114 for acquiring and processing veterinary-relatedinformation is described in detail below with reference to FIG. 2.

According to various embodiments disclosed herein, the one or moreinformation sources 106 may include any web page on the Internet, whichcomprise any veterinary-related information. In one example, theinformation source 106 is a web server hosting multiple medicinepublications (e.g., “PubMed”). In yet another example, the informationsource 106 is a database accessible over the network 108.

FIG. 2 is a diagram of the system 114 for acquiring and processingveterinary-related information according to an example embodiment. Inthis embodiment, the system 114 for acquiring and processingveterinary-related information may include a communication module 202, acrawling module 204, a parsing module 206, an ontology selecting module208, a relationship determination module 210, a classifying module 212,a ranking module 214, a database table generator 216, and a web pagegenerator 218.

In other embodiments, the system 114 for acquiring and processingveterinary-related information may include additional, fewer, ordifferent modules for various applications. Furthermore, all modules canbe integrated within a single apparatus, or, alternatively, can beremotely located and optionally be accessed via a third party.

The system 114 for acquiring and processing veterinary-relatedinformation may be implemented as hardware having software installedthereon that implements any steps necessary to operate the system 114according to various embodiments disclosed herein.

The communication module 202 may be configured to receive different userrequests, such as requests to conduct differential diagnosis to retrievecertain information from the database 118. The communication module 202may also be configured to exchange data between the remote informationsources 106 or other modules within the differential diagnosis supportsystem 104. In certain embodiments, the communication module 202 may beconfigured to import information from the one or more remote informationsources 106. The imported information can be stored in the database 118.

The crawling module 204 can be configured to craw the one or more remoteinformation sources 106 to search for certain online publications. Thesearch can be performed based on specific keywords within a specificfield. The crawling can be automatic or initiated by users.

The parsing module 206 can be configured to parse the importedveterinary-related information into sentences. In one example, OpenNatural Language Processing Libraries can be used to parse a text intosentences, following certain semantic rules. The parsed sentences can besaved in the database 118 with a link to the imported veterinary-relatedinformation.

The parsing module 206 can be configured to extract terms from thesentences. It should be noted that in some alternative examples, theparsing module 206 may parse the terms directly along with parsing thetext into sentences. Those skilled in the art would understand that anyapplicable method for parsing texts can be used.

The ontology selecting module 208 can be configured to select at leastone predetermined computer ontology associated with the one or moreterms. The computer ontologies comprise structural frameworks ofmultiple terms and relations therebetween. The ontology terms mayinclude the terms related to animal breeds, animal species, animaldiseases, bacteria, anatomical terms, insects, plants, drugs, etc. Thecomputer ontologies may be used by the system 114 to interpret the termsand relationships between them, as will be described below.

The relationship determination module 210 can be configured to determinerelations between the one or more terms extracted/parsed from theveterinary-related text information. The relationships may refer to arelationship “IS/ARE”, a relationship “HAVE/HAS”, and a relationship“GROUP”. In other words, the relationships determine how two or moreterms are interrelated with each other.

In one example, the phrase “broken tibia” can be analyzed. There are twoterms, i.e. “broken” and “tibia”. The relationship determination module210 can determine that here the relationship “IS” is used such that itis meant “tibia is broken”.

In one other example, the relationship “HAS” is used in the followingphrase “A dog has a tail”.

At last, the relationship “GROUP” is used for nouns that can be grouped.For example, from the phrase “Dogs have tails, ears and fur” it followsthat “tails, ears and fur” is a “Group”.

The classifying module 212 can be configured to classify the one or moreparsed/extracted terms. For instance, the terms can be classified insuch a way that each of them relates to one of the following: anon-human animal species, an animal disease, a medical sign, adifferential, and a treatment. The classification process can be basedon the selected computer ontology.

The ranking module 214 can be configured to assign weight factors to theterms. The weight factors in turn can be selected or pre-calculateddepending on multiple factors, such as a citation frequency (citationindex) of a certain term, an algorithm used in the selected computerontology, a distance between certain terms in the text, etc. The rankingmodule 214 thus facilitates (or may conduct) sorting of search resultsbased on the weight factors.

The database table generator 216 can be configured to generate adatabase table. The database table may comprise all classified terms,the relationships therebetween, the weight factors, the importedveterinary-related text information and/or a link to an externalinformation source having such information.

The web page generator 218 can be configured to generate web pageseither automatically, or upon a user request. In one example, the webpage may relate to an animal disease and may comprise its description,one or more medical signs, treatments, descriptions of multiple cases,related posts and publication, links to remote information sources, andso forth. In one another example, the web page may be generatedresponsive to the user request, which may have one or more medical signspeculiar to an examined animal. In other words, it is the user requestto perform computer-based differential diagnosis. In this case, the webpage may comprise a list of animal diseases associated with the medicalsigns contained in the user request. The animal diseases listings may besorted according to one or more methods, e.g. in line with the assignedweight factors. Moreover, each animal disease listing may be clickableto enable users to get more information related to the selectabledisease.

FIG. 3 is a process flow diagram showing a method 300 for acquiring andprocessing veterinary-related information according to an exampleembodiment. The method 300 may be performed by processing logic that maycomprise hardware (e.g., dedicated logic, programmable logic, andmicrocode), software (such as software run on a general-purpose computersystem or a dedicated machine), or a combination of both. In one exampleembodiment, the processing logic resides at the system 114 for acquiringand processing veterinary-related information or the differentialdiagnosis support system 104.

The method 300 can be performed by various modules discussed above withreference to FIG. 2. Each of these modules can comprise processinglogic. It will be appreciated by one of ordinary skill that examples ofthe foregoing modules may be virtual, and instructions said to beexecuted by a module may, in fact, be retrieved and executed by aprocessor. The foregoing modules may also include memory cards, servers,and/or computer disks. Although various modules may be configured toperform some or all of various steps described herein, fewer or moremodules may be provided and still fall within the scope of variousembodiments.

As shown in FIG. 3, the method 300 may commence at operation 302 withthe crawling module 204 crawling network resources, such as theinformation sources 106, which can be external web sites or databases.The crawling can be based on pre-selected keywords or publication dates.The found relevant online publication(s) is(are) imported to the system114 at operation 304.

At operation 306, the parsing module 206 performs parsing the importedonline publication (or “veterinary-related text information” asmentioned above) into sentences and terms.

At operation 308, the ontology selecting module 208 selects one or morecomputer ontologies related to the extracted terms. The computerontologies may comprise structural frameworks of multiple terms andrelations therebetween. The ontology terms may include such termsrelated to animal breeds, animal species, animal diseases, bacteria,anatomical terms, insects, plants, drugs, etc.

At operation 310, the relationship determination module 210 determinesrelationships between the extracted terms. This process may beoptionally based on the structural framework of pre-selected ontology.

At operation 312, the classifying module 212 classifies the extractedterms to relate each of them to a certain category. In one embodiment,the terms may be classified within the following concepts: a non-humananimal species, an animal disease, a medical sign, a differential, and atreatment. The classification process can be based on the selectedcomputer ontology.

At operation 314, the ranking module 214 may optionally assign weightfactors to the extracted terms. This procedure facilitates furtherranking or sorting search results to list the most relevant clinicalsigns in the first place.

At operation 316, the database table generator 216 generates a databasetable which may comprise all classified terms, the relationshipstherebetween, the weight factors, the imported veterinary-related textinformation and/or a link to an external information source having suchinformation.

FIG. 4 is an illustration of parsing and relationship generatingprocesses according to an example embodiment.

Assume the system 114 for acquiring and processing veterinary-relatedinformation imported a text and the following sentence was extracted andparsed: “Bradycardia and tachycardia are the main signs of cardiacarrhythmia”.

According to the method as described with reference to FIG. 3, theextracted sentence is broken into multiple terms. This process ofbreaking terms is illustrated in FIG. 4. The selected computer ontologyis used to classify each term and generate relations between them. Forexample:

-   -   “Bradycardia” and “Tachycardia” are grouped together in the        sentence as a noun phrase (NP). The word starts a “GROUP”        relationship between these terms.    -   “Are” starts a “IS A” relationship with the plural noun (NNS)        “signs”.    -   “Signs” has a predefined relationship to “IS” a “clinical sign”.    -   “Of” starts a “HAS” relationship with the noun phrase “Cardiac        Arrhythmias”.

Following this example, the logic of determining and assigningrelationships can be extended as follows:

-   -   If “Bradycardia and Tachycardia” is a group and IS a sign, then        separately, the terms bradycardia is a sign and tachycardia is a        sign.    -   “Bradycardia” is a clinical sign (““signs” is a clinical sign”        is a known relationship).    -   “Tachycardia” is a clinical sign.    -   Since differentials “HAVE/HAS” relationship with clinical signs        (known relationship), and “bradycardia” and “tachycardia” (are        signs) and “HAVE/HAS” relationship with “cardiac arrhythmias”,        we can imply that “cardiac arrhythmias” is a differential.

The determined relationships are then stored in a corresponding databasetable associated with the imported veterinary-related text information.

According to various embodiments, some terms upon extraction fromsentences may not be classified. In other words, some terms can beconsidered “unknown”. If this is the case, such terms can be furtherverified and/or defined by system operators. In some embodiments,unknown terms can be subjected to a morphological analysis. For example,if the term “Hyperkalemia” used in the phrase “One of the firstindicators of heart disease are bradycardia, hyperkalemia andtachycardia” is considered unknown, it can be determined whether theterm comprises Latin roots. In this example, the Latin root is “Hyper”which means “increase in”. Following such analysis, the entire term“Hyperkalemia” can be related to a clinical sign.

FIG. 5 is a simplified illustration of a graphical user interface 500 ofa web page for conducting a computer-based differential diagnosisrelated to non-human animals according to an example embodiment. Thegraphical user interface 500 may be represented as a window (e.g., abrowser window) to show its content. The graphical user interface 500may be presented on a screen of the client device 102 via the browser110.

By way of example and not limitation, the graphical user interface 500shows a search tool to define medical signs obtained during animalexamination. The graphical user interface 500 may comprise a widget 502to define a patient name, a widget 504 to indicate a species, a widget506 to indicate a patient sex, a widget 508 to indicate a patient age, awidget 510 to select one or more medical signs, and a widget 512 toinitiate a search process.

The widgets 502 to 512 can be represented as one or more of actionablebuttons, radio buttons, cycle buttons, controls, icons, hyperlinks, textboxes, list boxes, check boxes, etc.

The widget 512 to initiate a search process can initiate the search overthe database 118 to list one or more animal diseases which arecharacterized by the indicated medical signs.

FIG. 6 is a simplified illustration of a graphical user interface 600 ofa web page for showing search results based on pre-selected one or moremedical signs according to an example embodiment. The graphical userinterface 600 may be represented as a window (e.g., a browser window) toshow its content. The graphical user interface 600 may be presented on ascreen of the client device 102 via the browser 110.

By way of example and not limitation, the graphical user interface 600may comprise a section 602 showing clinical signs as preset by a user.Specifically, the section 602 may comprise the widget 502 to define apatient name, the widget 504 to indicate a species, the widget 506 toindicate a patient sex, the widget 508 to indicate a patient age, thewidget 510 to select one or more medical signs, and the widget 512 tostart over a search process.

The graphical user interface 600 may also comprise a section 604 showingthe results of the search, i.e. a list of animal diseases which hascharacteristics associated with the indicated clinical signs. Eachdisease in the list is actionable, and by clicking on it, the user maybe driven to a web page describing the selected disease.

FIG. 7 is a simplified illustration of a graphical user interface 700 ofa web page related to an animal disease according to an exampleembodiment. The graphical user interface 700 may be represented as awindow (e.g., a browser window) to show its content. For example, thegraphical user interface 700 may be presented on a screen of the clientdevice 102 via the browser 110.

By way of example and not limitation, the graphical user interface 700may comprise a section 702 to show information concerning a certaindisease, a section 704 to show known clinical signs related to thedisease, a section 706 to show known treatment methods, a section 708 toshow supplementary knowledge related to the disease, a section 710 toshow diagnostic methods related to examine the disease, and a section712 to show discussions between different veterinary practitioners.

Those skilled in the art would appreciate that the graphical userinterfaces 500, 600, 700 may comprise additional, fewer or othersections, widget or content.

FIG. 8 shows a diagrammatic representation of a computing device for amachine in the example electronic form of a computer system 800, withinwhich a set of instructions for causing the machine to perform any oneor more of the methodologies discussed herein can be executed. Invarious example embodiments, the machine operates as a standalone deviceor can be connected (e.g., networked) to other machines. In a networkeddeployment, the machine can operate in the capacity of a server or aclient machine in a server-client network environment, or as a peermachine in a peer-to-peer (or distributed) network environment. Themachine can be a personal computer (PC), a tablet PC, a set-top box(STB), a PDA, a cellular telephone, a portable music player (e.g., aportable hard drive audio device, such as an Moving Picture ExpertsGroup Audio Layer 3 (MP3) player), a web appliance, a network router, aswitch, a bridge, or any machine capable of executing a set ofinstructions (sequential or otherwise) that specify actions to be takenby that machine. Further, while only a single machine is illustrated,the term “machine” shall also be taken to include any collection ofmachines that individually or jointly execute a set (or multiple sets)of instructions to perform any one or more of the methodologiesdiscussed herein.

The example computer system 800 includes a processor or multipleprocessors 802 (e.g., a central processing unit (CPU), a graphicsprocessing unit (GPU), or both), and a main memory 804 and a staticmemory 806, which communicate with each other via a bus 808. Thecomputer system 800 can further include a video display unit 810 (e.g.,a liquid crystal displays (LCD) or a cathode ray tube (CRT)). Thecomputer system 800 also includes at least one input device 812, such asan alphanumeric input device (e.g., a keyboard), a cursor control device(e.g., a mouse), a microphone, a digital camera, a video camera, and soforth. The computer system 800 also includes a disk drive unit 814, asignal generation device 816 (e.g., a speaker), and a network interfacedevice 818.

The disk drive unit 814 includes a computer-readable medium 820 whichstores one or more sets of instructions and data structures (e.g.,instructions 822) embodying or utilized by any one or more of themethodologies or functions described herein. The instructions 822 canalso reside, completely or at least partially, within the main memory804 and/or within the engines 802 during execution thereof by thecomputer system 800. The main memory 804 and the engines 802 alsoconstitute machine-readable media.

The instructions 822 can further be transmitted or received over thenetwork 108 via the network interface device 818 utilizing any one of anumber of well-known transfer protocols (e.g., Hyper Text TransferProtocol (HTTP), CAN, Serial, and Modbus).

While the computer-readable medium 820 is shown in an example embodimentto be a single medium, the term “computer-readable medium” should betaken to include a single medium or multiple media (e.g., a centralizedor distributed database, and/or associated caches and servers) thatstore the one or more sets of instructions. The term “computer-readablemedium” shall also be taken to include any medium that is capable ofstoring, encoding, or carrying a set of instructions for execution bythe machine and that causes the machine to perform any one or more ofthe methodologies of the present application, or that is capable ofstoring, encoding, or carrying data structures utilized by or associatedwith such a set of instructions. The term “computer-readable medium”shall accordingly be taken to include, but not be limited to,solid-state memories, optical and magnetic media. Such media can alsoinclude, without limitation, hard disks, floppy disks, flash memorycards, digital video disks, random access memory (RAMs), read onlymemory (ROMs), and the like.

The example embodiments described herein can be implemented in anoperating environment comprising computer-executable instructions (e.g.,software) installed on a computer, in hardware, or in a combination ofsoftware and hardware. The computer-executable instructions can bewritten in a computer programming language or can be embodied infirmware logic. If written in a programming language conforming to arecognized standard, such instructions can be executed on a variety ofhardware platforms and for interfaces to a variety of operating systems.Although not limited thereto, computer software programs forimplementing the present method can be written in any number of suitableprogramming languages such as, for example, Hyper text Markup Language(HTML), Dynamic HTML, Extensible Markup Language (XML), ExtensibleStylesheet Language (XSL), Document Style Semantics and SpecificationLanguage (DSSSL), Cascading Style Sheets (CSS), Synchronized MultimediaIntegration Language (SMIL), Wireless Markup Language (WML), Java™,Jini™, C, C++, Perl, UNIX Shell, Visual Basic or Visual Basic Script,Virtual Reality Markup Language (VRML), ColdFusion™ or other compilers,assemblers, interpreters or other computer languages or platforms.

Thus, computer-implemented method and systems for acquiring andprocessing information about non-human animal diseases are described.These methods and systems facilitate a computer-based differentialdiagnosis. Many studies demonstrated improvement of quality of care andreduction of medical errors by using such methods and systems.

Although embodiments have been described with reference to specificexample embodiments, it will be evident that various modifications andchanges can be made to these example embodiments without departing fromthe broader spirit and scope of the present application. Accordingly,the specification and drawings are to be regarded in an illustrativerather than a restrictive sense.

What is claimed is:
 1. A computer-implemented method for acquiring andprocessing information about non-human animal diseases, the methodcomprising: importing veterinary-related text information, wherein theveterinary-related text information is related to one or more non-humananimal diseases; parsing the veterinary-related text information intoone or more terms; determining relations between the one or more terms;classifying the one or more terms such that each term relates to one of:a non-human animal species, an animal disease, a medical sign and atreatment; and generating a database table associated with the importedveterinary-related text information, the database table comprising theone or more classified terms and the relations therebetween.
 2. Themethod of claim 1, further comprising: selecting at least onepredetermined ontology associated with the one or more terms, whereinthe ontology has a structural framework of terms and relationstherebetween.
 3. The method of claim 2, wherein determining relationsbetween the one or more terms is based on the structural framework ofthe at least one ontology.
 4. The method of claim 2, wherein classifyingthe one or more terms is based on the structural framework of the atleast one ontology.
 5. The method of claim 1, wherein parsing theveterinary-related text information comprises applying predeterminedsemantic rules.
 6. The method of claim 1, further comprising: assigningweight factors to the terms associated with the veterinary-related textinformation; and storing the weight coefficients in the table database.7. The method of claim 1, wherein generating the database tableassociated with the imported veterinary-related text informationcomprises updating an existing database table.
 8. The method of claim 1,further comprising: crawling one or more resources over a network toimport the veterinary-related text information.
 9. The method of claim1, further comprising: generating, upon a user request, a web pagerelated to a non-human animal disease, the web page comprising one ormore of medical signs and treatments acquired from multiple resources.10. The method of claim 1, further comprising: receiving a user requestto conduct a veterinary differential diagnosis, wherein the user requestcomprises one or more of preselected medical signs; searching forinformation about non-human animal diseases, associated with thepreselected medical signs, through the one or more database tables; andreporting the list of one or more non-human animal diseases.
 11. Themethod of claim 10, further comprising: ranking the list of one or morenon-human animal diseases based on the weight factors applied to theterms; and sorting the one or more non-human animal diseases on theirrelevancy.
 12. The method of claim 1, further comprising: providing auser interface to access, search over, and process information aboutnon-human animal diseases among the at least one database table.
 13. Themethod of claim 1, further comprising: virtually linking the generateddatabase table associated with the imported veterinary-related textinformation with one or more remote resources in the network.
 14. Thesystem of claim 1, further comprising: a user interface configured toenable users to access, search over, and process information aboutnon-human animal diseases among the at least one database table.
 15. Asystem for acquiring and processing information about non-human animaldiseases, the system comprising: a communication module configured toimport veterinary-related text information, wherein theveterinary-related text information comprises information related to oneor more non-human animal diseases; a parsing module configured to parsethe veterinary-related text information into one or more terms; arelationship determination module configured to determine relationsbetween the one or more terms; a classifying module configured toclassify the one or more terms such that each term relates to one of: anon-human animal species, an animal disease, a medical sign and atreatment; and a database table generator configured to generate adatabase table associated with the imported veterinary-related textinformation, the database table comprising the one or more classifiedterms and the relations therebetween.
 16. The system of claim 15,further comprising: an ontology selecting module configured to select atleast one predetermined ontology associated with the one or more terms,wherein the ontology has a structural framework of terms and relationstherebetween.
 17. The system of claim 15, further comprising: a rankingmodule configured to assign weight factors to the terms associated withthe veterinary-related text information, and rank the list of one ormore non-human animal diseases based on the weight factors applied tothe terms.
 18. The system of claim 15, further comprising: a crawlingmodule configured to craw one or more resources over a network to importthe veterinary-related text information.
 19. The system of claim 15,further comprising: a web page generator configured to generate, upon auser request, a web page related to a non-human animal disease, the webpage comprising one or more of medical signs and treatments acquiredfrom multiple resources.
 20. A computer-readable medium havinginstructions stored thereon, which, when executed by one or morecomputers, cause the one or more computers to: import veterinary-relatedtext information, wherein the veterinary-related text information isrelated to one or more non-human animal diseases; parse theveterinary-related text information into one or more terms; determinerelations between the one or more terms; classify the one or more termssuch that each term relates to one of: a non-human animal species, ananimal disease, a medical sign and a treatment; and generate a databasetable associated with the imported veterinary-related text information,the database table comprising the one or more classified terms and therelations therebetween.